/**
 * Copyright &copy; 2015-2020 <a href="http://www.jeeplus.org/">JeePlus</a> All rights reserved.
 */
package com.jeeplus.modules.wms.entity;

import com.jeeplus.modules.infor.entity.Location;
import com.jeeplus.modules.sys.entity.User;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

import com.jeeplus.core.persistence.DataEntity;
import com.jeeplus.common.utils.excel.annotation.ExcelField;

/**
 * 库存移动Entity
 * @author sld
 * @version 2017-11-28
 */
public class LnventoryMove extends DataEntity<LnventoryMove> {
	
	private static final long serialVersionUID = 1L;
	private String materialCode;		// 物料编码
	private String materialName;		// 物料名称
	private String shipperCode;		// 货主代码
	private Location location;		// 原货位
	private String usable;		// 可用
	private String status;		// 状态
	private Location toLocation;		// 至货位
	private String moveQuantity;		// 移动数量
	private User operater;		// 操作人
	private Date operatDate;		// 操作时间
	private Date date;		// 生产日期
	private String batch;		// 批次
	private Date limitedPeriod;		// 有效期至
	private Date inboundDate;		// 入库日期
	private String usableStandard;		// 可用（标准）
	private String existing;		// 现有
	private String existingStandard;		// 现有（标准）
	private String packagingCode;		// 包装代码
	private String unit;		// 单位
	private String quantityAllotted;		// 分配数量
	private String externalNumber;		// 外部批号
	private String batchProperty;		// 批次属性（1-9）
	private String projectName;          //项目名称
	public LnventoryMove() {
		super();
	}

	public LnventoryMove(String id){
		super(id);
	}

	@ExcelField(title="物料编码", align=2, sort=1)
	public String getMaterialCode() {
		return materialCode;
	}

	public void setMaterialCode(String materialCode) {
		this.materialCode = materialCode;
	}
	
	@ExcelField(title="货主代码", align=2, sort=2)
	public String getShipperCode() {
		return shipperCode;
	}

	public void setShipperCode(String shipperCode) {
		this.shipperCode = shipperCode;
	}
	
	@ExcelField(title="原货位", align=2, sort=3)
	public Location getLocation() {
		return location;
	}

	public void setLocation(Location location) {
		this.location = location;
	}
	
	@ExcelField(title="可用", align=2, sort=4)
	public String getUsable() {
		return usable;
	}

	public void setUsable(String usable) {
		this.usable = usable;
	}
	
	@ExcelField(title="状态", align=2, sort=5)
	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}
	
	@ExcelField(title="至货位", align=2, sort=6)
	public Location getToLocation() {
		return toLocation;
	}

	public void setToLocation(Location toLocation) {
		this.toLocation = toLocation;
	}
	
	@ExcelField(title="移动数量", align=2, sort=7)
	public String getMoveQuantity() {
		return moveQuantity;
	}

	public void setMoveQuantity(String moveQuantity) {
		this.moveQuantity = moveQuantity;
	}
	
	@ExcelField(title="操作人", align=2, sort=8)
	public User getOperater() {
		return operater;
	}

	public void setOperater(User operater) {
		this.operater = operater;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="操作时间", align=2, sort=9)
	public Date getOperatDate() {
		return operatDate;
	}

	public void setOperatDate(Date operatDate) {
		this.operatDate = operatDate;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="生产日期", align=2, sort=10)
	public Date getDate() {
		return date;
	}

	public void setDate(Date date) {
		this.date = date;
	}
	
	@ExcelField(title="批次", align=2, sort=11)
	public String getBatch() {
		return batch;
	}

	public void setBatch(String batch) {
		this.batch = batch;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="有效期至", align=2, sort=12)
	public Date getLimitedPeriod() {
		return limitedPeriod;
	}

	public void setLimitedPeriod(Date limitedPeriod) {
		this.limitedPeriod = limitedPeriod;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="入库日期", align=2, sort=13)
	public Date getInboundDate() {
		return inboundDate;
	}

	public void setInboundDate(Date inboundDate) {
		this.inboundDate = inboundDate;
	}
	
	@ExcelField(title="可用（标准）", align=2, sort=14)
	public String getUsableStandard() {
		return usableStandard;
	}

	public void setUsableStandard(String usableStandard) {
		this.usableStandard = usableStandard;
	}
	
	@ExcelField(title="现有", align=2, sort=15)
	public String getExisting() {
		return existing;
	}

	public void setExisting(String existing) {
		this.existing = existing;
	}
	
	@ExcelField(title="现有（标准）", align=2, sort=16)
	public String getExistingStandard() {
		return existingStandard;
	}

	public void setExistingStandard(String existingStandard) {
		this.existingStandard = existingStandard;
	}
	
	@ExcelField(title="包装代码", align=2, sort=17)
	public String getPackagingCode() {
		return packagingCode;
	}

	public void setPackagingCode(String packagingCode) {
		this.packagingCode = packagingCode;
	}
	
	@ExcelField(title="单位", align=2, sort=18)
	public String getUnit() {
		return unit;
	}

	public void setUnit(String unit) {
		this.unit = unit;
	}
	
	@ExcelField(title="分配数量", align=2, sort=19)
	public String getQuantityAllotted() {
		return quantityAllotted;
	}

	public void setQuantityAllotted(String quantityAllotted) {
		this.quantityAllotted = quantityAllotted;
	}
	
	@ExcelField(title="外部批号", align=2, sort=20)
	public String getExternalNumber() {
		return externalNumber;
	}

	public void setExternalNumber(String externalNumber) {
		this.externalNumber = externalNumber;
	}
	
	@ExcelField(title="批次属性（1-9）", align=2, sort=21)
	public String getBatchProperty() {
		return batchProperty;
	}

	public void setBatchProperty(String batchProperty) {
		this.batchProperty = batchProperty;
	}

	public String getProjectName() {
		return projectName;
	}

	public void setProjectName(String projectName) {
		this.projectName = projectName;
	}

	public String getMaterialName() {
		return materialName;
	}

	public void setMaterialName(String materialName) {
		this.materialName = materialName;
	}
}